p= new char [strlen(str)+1]?
来源:百度知道 编辑:UC知道 时间:2024/05/03 19:43:49
例如:#include <iostream>
#include <cstring>
using namespace std;
class student
{char *name;
static int number;
int idcard;
float score;
public:student (char *str,float x)
{name=new char [strlen(str)+1];//new后面的是什么意思啊?
strcpy(name,str);
number++;
idcard=number;
score = x;}
.......
#include <cstring>
using namespace std;
class student
{char *name;
static int number;
int idcard;
float score;
public:student (char *str,float x)
{name=new char [strlen(str)+1];//new后面的是什么意思啊?
strcpy(name,str);
number++;
idcard=number;
score = x;}
.......
“name=new char [strlen(str)+1];”语句的意思是“动态分配一个长度为strlen(str)+1的字符数组空间,并把数组首地址赋给指针变量name”,而strlen(str)是头文件string.h中计算字符串长度的函数。
呵呵,我刚开始学的时候也不是很懂这快内容,语言这东西就是要多练。
new char[10] //动态分配10个字节的字符数组
new char [strlen(str)+1];//动态分配strlen(str)+1个字节的字符数组
char *p =new char[..]
char *p= new char 与char *p = new char[1]有区别吗
请问:定义一个char *p = new char[105]和定义一个char p[105] 有什么区别?
char *pch=NULL;pch = new char[100]; 和char *pch= new char[100];有什么区别
*pVsipMsg = (PVSIP_MSG) new char[MsgSize]
char pch[100];与char *pch= new char[100];哪个好点
char* a=new char;a="abc";会泄露内存么?
char *p与 char p[]的区别
c语言 char **p
char *p 问题